/**
 * 版权所有 2009-2012山东新北洋信息技术股份有限公司
 * 保留所有权利。
 */
package com.linyaonan.leetcode.easy._7;

/**
 * 给出一个 32 位的有符号整数，你需要将这个整数中每位上的数字进行反转。
 * @ProjectName: leetcode
 * @Package: com.linyaonan.leetcode.easy._7
 * @ClassName: Reverse
 * @Author: linyaonan
 * @Date: 2019/10/7 16:14
 */
public class Reverse {
    public static int reverse(int x) {
        boolean isNegative = false;
        String s;
        if (x < 0) {
            isNegative = true;
            s = (x + "").substring(1);
        } else {
            s = (x + "");
        }
        StringBuffer reverse = new StringBuffer(s).reverse();
        int l;
        try {
            l = Integer.parseInt(reverse.toString());
        } catch (NumberFormatException e) {
            return 0;
        }
        return isNegative ? 0 - l : l;
    }
}
